package com.he.decoratormodel.decorator;

import com.he.decoratormodel.component.Component;

/**
 * 装饰模式，为已有的具体功能类动态的添加新的功能的一种方式，被装饰角色能够根据需要不断进行装饰包装，
 * 得到功能更加强大的被装饰角色。
 * <br/>好处：将被装饰类的核心代码于装饰功能分离开来，易于扩展，增加或删除装饰功能灵活
 */
public class Decorator implements Component {

    /**
     * 指定现阶段具体装饰对象
     */
    protected Component component;

    public Decorator(Component component) {
        this.component = component;
    }

    @Override
    public void puton() {
        component.puton();
    }
}
